去年參加 Software Development 類別的鐵人賽,主題為PHP 大師之路 - 開源的技術淬練,獲得佳作的肯定,給了我很大的鼓勵。原本今年想接續這個主題,繼續寫作關於 PHP 的題材並以參加為出發點來創作一套自己的 PHP Framework,並以此為主題參賽。畢竟平日工作下班後,處理的還是自己工作上的進度,對於開放源碼作品的創作及維護漸漸被消磨掉熱情。而一年一度的鐵人賽有很多人正和自己一樣做一樣的事情的參與感,多了些動機來推動自己向前做想做,但還沒動手做的事。
八月底,正當要報名時,發現永豐金 API 這個獨立的類別,感覺很有興趣。平常的工作就是不斷串接各式各樣的 API,例如物流、各式金流、電子發票及科技大廠的公有雲服務等等,也設計過收單平台串接玉山銀搭建客製刷卡介面,經驗上還算是可以整理一些想法分享給大家,於是毅然決然改報名永豐金APIs。
本系列文章由淺入深,主要分為三個面向,分別為
看懂串接文件是一定可以看懂的,但花 10 分鐘大致瞭解該做些什麼,找對開始 Coding 的那個時間點,和很仔細看了兩小時文件,然後隔天睡醒已經忘了文件在說什麼,又得再看過一遍,不斷思考要怎麼做。這樣的話,效率差別很多,技術主管要請求估出工作時程,結果也因為文件還在看,所以也估不準。
看技術串接文件比較像是在閱讀有很多生字的英文文章,可能有很多生字看不懂,但可以從前後文去推敲出單字的意思來瞭解整篇的文章在說些什麼。
為串接方法包裝成可測式性、物件導向的 PHP SDK,避免串接邏輯寫在 Controller,更易於使用及維護。
在這個章節會使用 Pure PHP 示範串接,以及使用 PHP SDK 設計 WooCommerce 付款外掛,使用豐支付進行付款結帳。
本文章發表的程式作品 PHP SDK 及 WooCommerce 付款外掛皆依 GPL 授權開源免費提供大眾使用。
原則上還是和去年一樣且戰且走的寫法,圍繞在以上的章節,想到什麼寫什麼,每天還是一樣壓線發文,希望不會那一天出了意外不小心睡著...。
串接一定會用到的Postman,這是一套用來測試發送 Request,以及很好的 API 文件記錄工具,還沒下載的朋友請記得安裝哦。
本系列文章是為初學者而寫的,如果 Postman 沒用過,或名詞看不懂也沒關係,筆者試著用最白話及圖文並茂的方式來解釋,金流串接其實沒想像中的複雜喔。
本文更新於筆者的 TerryL 部落格,Day 1 - 前言,寫作動機分享與準備事項,有興趣可前往閱讀及討論。
超期待使用 PHP SDK 設計 WooCommerce 付款外掛!一直覺得繼承 WC_Payment_Gateway 的寫法實在不怎麼好用 Orz...
付款外掛是 extends WC_Payment_Gateway 唷 ^^"
幻想是可以像這套一樣:https://github.com/thephpleague/omnipay
$gateway = Omnipay::create('Stripe');
$gateway->setApiKey('abc123');
好美啊~~~
物件導向的程式設計就是這樣囉。易擴展,也很容易使用。Day 11 就會發佈囉。